# 如何运行策略优化 ## 入口与常用 kwargs 使用 **qt.run(op, mode=2, ...)** 运行策略优化。常用参数包括 **opti_method**、**opti_sample_count**、**opti_output_count** 等。 ## 优化算法完整列表(罗列并简短解释) 以下为 **opti_method** 常见可选值及适用场景,与 qteasy 2.0 API 一致为准。 | 算法名 | 含义 | 适用场景 | |--------|------|----------| | grid | 网格搜索 | 参数少、离散空间,穷举或粗网格。 | | montecarlo | 蒙特卡洛随机采样 | 参数较多时随机抽样评估。 | | GA | 遗传算法 | 中高维、连续/离散混合。 | | SA | 模拟退火 | 中维、易陷入局部最优时。 | | PSO | 粒子群优化 | 连续空间、多峰。 | | bayesian | 贝叶斯优化 | 样本昂贵、需少步数寻优。 | ## 优化运行参数完整列表(罗列并简短解释) | 参数名 | 类型/可选值 | 含义 | |--------|-------------|------| | opti_method | str | 优化算法:grid、montecarlo、GA、SA、PSO、bayesian 等。 | | opti_sample_count | int | 采样/迭代次数(如蒙特卡洛样本数、遗传代数等)。 | | opti_output_count | int | 保留的最优结果数量(Top-K)。 | | 目标函数相关 | — | 如优化目标为夏普、回撤等,以配置或 API 为准。 | | 约束相关 | — | 若有约束(如最大回撤上限),以配置为准。 | 回测区间、asset_pool 等与 mode=1 相同的参数在 mode=2 时同样生效。 ## 参数空间 策略的 **Parameter** 及 **par_range** 定义优化时的搜索空间;框架按 opti_method 在该空间内采样或搜索。 ## 最小可运行示例 ```python import qteasy as qt op = qt.Operator(strategies='dma', signal_type='PT', run_freq='d') # dma 策略带 short_period、long_period 等可调参数 qt.configure(asset_pool='000001.SZ', invest_start='2020-01-01', invest_end='2023-12-31') result = qt.run(op, mode=2, opti_method='grid', opti_sample_count=100, opti_output_count=10) ``` ## 配置要点 - **回测区间、资产池**:与 mode=1 一致,决定每次参数评估的回测环境。 - **目标函数**:决定“更优”的定义(如夏普最大化、回撤最小化),影响排序与最终选取。